home *** CD-ROM | disk | FTP | other *** search
- -> wbAppIcon is an abstraction of WB AppIcons.
- -> Copyright © Guichard Damien 01/04/1996
- -> drobna poprawka by Piotr Gapiïski (31.03.96)
-
-
- OPT MODULE
- OPT EXPORT
-
- MODULE 'wb','workbench/workbench','icon','workbench/startup'
- MODULE 'fw/wbObject','fw/wbMessagePort'
-
- OBJECT wbAppIcon OF wbMessagePort
- diskObject
- appIcon
- ENDOBJECT
-
- -> Create a WB AppIcon.
- -> Return FALSE if failed.
- PROC create(name,iconName) OF wbAppIcon HANDLE
- IF iconbase=NIL THEN Raise(0)
- IF workbenchbase=NIL THEN Raise(0)
- IF self.makePort()=FALSE THEN Raise(0)
- self.diskObject:=GetDiskObjectNew(iconName)
- IF self.diskObject=NIL THEN Raise(0)
- self.appIcon:=AddAppIconA(0,0,name,self.port,NIL,self.diskObject,NIL)
- IF self.appIcon=NIL THEN Raise(0)
- RETURN TRUE
- EXCEPT
- self.remove()
- ENDPROC FALSE
-
- -> Handle the receipt of a message at the object's MsgPort.
- PROC handleMessage(appMsg:PTR TO appmessage) OF wbAppIcon
- IF appMsg.numargs=0 THEN RETURN self.handleDoubleClik()
- ENDPROC self.handleDroppedIcons(appMsg.arglist,appMsg.numargs)
- ->---------------------------------------------^^^^^^^^^^^^^^
-
- -> Handle double click on the AppIcon.
- PROC handleDoubleClik() OF wbAppIcon IS STOPALL
-
- -> Handle Icons dropped into AppIcon.
- PROC handleDroppedIcons(argList:PTR TO wbarg,n=0) OF wbAppIcon IS PASS
- ->-------------------------------------------^^^
-
- -> Remove the WB AppIcon.
- PROC remove() OF wbAppIcon
- IF self.appIcon THEN RemoveAppIcon(self.appIcon)
- IF self.diskObject THEN FreeDiskObject(self.diskObject)
- IF self.port THEN self.deletePort()
- self.appIcon:=NIL
- self.diskObject:=NIL
- ENDPROC
-
-